// pages/chat_in/chat_in.js
// const wxappIo = require('socket.io-wxapp-client');
// socket 连接插件
const io = require('../../utils/weapp.socket.io.js')
// socket 连接地址
var socketUrl = 'http://ttapi.research.itcast.cn'
// socket 状态更新
var socketMessage = ''
// 上下文对象
var that

Page({

  /**
   * 页面的初始数据
   */
  data: {
    message: [{
        isme: false,
        content: "你好，想对我说什么？"
      },
      {
        isme: true,
        content: "你好~"
      },
    ],
    inputValue: '',
    userPhoto: ""
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // 修改顶部导航颜色字体
    wx.setNavigationBarTitle({
      title: '小智同学',
    })
    wx.setNavigationBarColor({
      backgroundColor: '#3296fa',
      frontColor: '#ffffff',
    })
    // 获取到用户头像
    this.setData({
      userPhoto: wx.getStorageSync('user').photo
    })
    // 获取到storage中的message
    if (wx.getStorageSync('message')) {
      this.setData({
        message: wx.getStorageSync('message')
      })
    }
    // 建立socket连接
    this.socketInit()
  },
  // 发送数据
  send() {
    if(this.data.inputValue == '') return false
    // 配置发送数据
    let sendData = {
      isme: true,
      content: this.data.inputValue
    }
    let inputValue = this.data.inputValue
    // 发送到服务器端
    wx.sendSocketMessage({
      data: inputValue
    })
    this.data.message.push(sendData)
    // 添加到数据
    this.setData({
      inputValue: '',
      message: this.data.message
    })
    // 添加到本地storage
    wx.setStorageSync('message', this.data.message)
  },
  // 配置socket
  socketInit() {
    console.log(111)
    wx.connectSocket({
      url: 'ws://123.207.136.134:9010/ajaxchattest',
      // url:'http://ttapi.research.itcast.cn/app/socket.io/',
      success: function (res) {
        console.log(res)
      },
      fail: function (err) {
        console.log(err)
      }
    })
    wx.onSocketOpen((result) => {
      console.log('socket open', result)
    })
    wx.onSocketMessage((result) => {
      console.log('socket message', result)
      let msg = {
        isme: false,
        content: result.data
      }
      this.data.message.push(msg)
      this.setData({
        message:this.data.message
      })
    })
    wx.onSocketError((result) => {
      console.log('socket error', result)
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})